﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x020010C7 RID: 4295
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class SceneEntityRefreshInfo : IMessage<SceneEntityRefreshInfo>, IMessage, IEquatable<SceneEntityRefreshInfo>, IDeepCloneable<SceneEntityRefreshInfo>, IBufferMessage
	{
		// Token: 0x1700364D RID: 13901
		// (get) Token: 0x0600C003 RID: 49155 RVA: 0x00206D10 File Offset: 0x00204F10
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<SceneEntityRefreshInfo> Parser
		{
			get
			{
				return SceneEntityRefreshInfo._parser;
			}
		}

		// Token: 0x1700364E RID: 13902
		// (get) Token: 0x0600C004 RID: 49156 RVA: 0x00206D17 File Offset: 0x00204F17
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return SceneEntityRefreshInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x1700364F RID: 13903
		// (get) Token: 0x0600C005 RID: 49157 RVA: 0x00206D29 File Offset: 0x00204F29
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return SceneEntityRefreshInfo.Descriptor;
			}
		}

		// Token: 0x0600C006 RID: 49158 RVA: 0x00206D30 File Offset: 0x00204F30
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SceneEntityRefreshInfo()
		{
		}

		// Token: 0x0600C007 RID: 49159 RVA: 0x00206D38 File Offset: 0x00204F38
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SceneEntityRefreshInfo(SceneEntityRefreshInfo other) : this()
		{
			SceneEntityRefreshInfo.RefreshOneofCase refreshCase = other.RefreshCase;
			if (refreshCase != SceneEntityRefreshInfo.RefreshOneofCase.DeleteEntity)
			{
				if (refreshCase != SceneEntityRefreshInfo.RefreshOneofCase.AddEntity)
				{
					if (refreshCase == SceneEntityRefreshInfo.RefreshOneofCase.EDMFEJHEPFH)
					{
						this.EDMFEJHEPFH = other.EDMFEJHEPFH;
					}
				}
				else
				{
					this.AddEntity = other.AddEntity.Clone();
				}
			}
			else
			{
				this.DeleteEntity = other.DeleteEntity;
			}
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600C008 RID: 49160 RVA: 0x00206D9F File Offset: 0x00204F9F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SceneEntityRefreshInfo Clone()
		{
			return new SceneEntityRefreshInfo(this);
		}

		// Token: 0x17003650 RID: 13904
		// (get) Token: 0x0600C009 RID: 49161 RVA: 0x00206DA7 File Offset: 0x00204FA7
		// (set) Token: 0x0600C00A RID: 49162 RVA: 0x00206DBF File Offset: 0x00204FBF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SceneEntityInfo AddEntity
		{
			get
			{
				if (this.refreshCase_ != SceneEntityRefreshInfo.RefreshOneofCase.AddEntity)
				{
					return null;
				}
				return (SceneEntityInfo)this.refresh_;
			}
			set
			{
				this.refresh_ = value;
				this.refreshCase_ = ((value == null) ? SceneEntityRefreshInfo.RefreshOneofCase.None : SceneEntityRefreshInfo.RefreshOneofCase.AddEntity);
			}
		}

		// Token: 0x17003651 RID: 13905
		// (get) Token: 0x0600C00B RID: 49163 RVA: 0x00206DD5 File Offset: 0x00204FD5
		// (set) Token: 0x0600C00C RID: 49164 RVA: 0x00206DEC File Offset: 0x00204FEC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint EDMFEJHEPFH
		{
			get
			{
				if (!this.HasEDMFEJHEPFH)
				{
					return 0U;
				}
				return (uint)this.refresh_;
			}
			set
			{
				this.refresh_ = value;
				this.refreshCase_ = SceneEntityRefreshInfo.RefreshOneofCase.EDMFEJHEPFH;
			}
		}

		// Token: 0x17003652 RID: 13906
		// (get) Token: 0x0600C00D RID: 49165 RVA: 0x00206E02 File Offset: 0x00205002
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool HasEDMFEJHEPFH
		{
			get
			{
				return this.refreshCase_ == SceneEntityRefreshInfo.RefreshOneofCase.EDMFEJHEPFH;
			}
		}

		// Token: 0x0600C00E RID: 49166 RVA: 0x00206E0E File Offset: 0x0020500E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void ClearEDMFEJHEPFH()
		{
			if (this.HasEDMFEJHEPFH)
			{
				this.ClearRefresh();
			}
		}

		// Token: 0x17003653 RID: 13907
		// (get) Token: 0x0600C00F RID: 49167 RVA: 0x00206E1E File Offset: 0x0020501E
		// (set) Token: 0x0600C010 RID: 49168 RVA: 0x00206E35 File Offset: 0x00205035
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint DeleteEntity
		{
			get
			{
				if (!this.HasDeleteEntity)
				{
					return 0U;
				}
				return (uint)this.refresh_;
			}
			set
			{
				this.refresh_ = value;
				this.refreshCase_ = SceneEntityRefreshInfo.RefreshOneofCase.DeleteEntity;
			}
		}

		// Token: 0x17003654 RID: 13908
		// (get) Token: 0x0600C011 RID: 49169 RVA: 0x00206E4A File Offset: 0x0020504A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool HasDeleteEntity
		{
			get
			{
				return this.refreshCase_ == SceneEntityRefreshInfo.RefreshOneofCase.DeleteEntity;
			}
		}

		// Token: 0x0600C012 RID: 49170 RVA: 0x00206E55 File Offset: 0x00205055
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void ClearDeleteEntity()
		{
			if (this.HasDeleteEntity)
			{
				this.ClearRefresh();
			}
		}

		// Token: 0x17003655 RID: 13909
		// (get) Token: 0x0600C013 RID: 49171 RVA: 0x00206E65 File Offset: 0x00205065
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SceneEntityRefreshInfo.RefreshOneofCase RefreshCase
		{
			get
			{
				return this.refreshCase_;
			}
		}

		// Token: 0x0600C014 RID: 49172 RVA: 0x00206E6D File Offset: 0x0020506D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void ClearRefresh()
		{
			this.refreshCase_ = SceneEntityRefreshInfo.RefreshOneofCase.None;
			this.refresh_ = null;
		}

		// Token: 0x0600C015 RID: 49173 RVA: 0x00206E7D File Offset: 0x0020507D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as SceneEntityRefreshInfo);
		}

		// Token: 0x0600C016 RID: 49174 RVA: 0x00206E8C File Offset: 0x0020508C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(SceneEntityRefreshInfo other)
		{
			return other != null && (other == this || (object.Equals(this.AddEntity, other.AddEntity) && this.EDMFEJHEPFH == other.EDMFEJHEPFH && this.DeleteEntity == other.DeleteEntity && this.RefreshCase == other.RefreshCase && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600C017 RID: 49175 RVA: 0x00206EFC File Offset: 0x002050FC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.refreshCase_ == SceneEntityRefreshInfo.RefreshOneofCase.AddEntity)
			{
				num ^= this.AddEntity.GetHashCode();
			}
			if (this.HasEDMFEJHEPFH)
			{
				num ^= this.EDMFEJHEPFH.GetHashCode();
			}
			if (this.HasDeleteEntity)
			{
				num ^= this.DeleteEntity.GetHashCode();
			}
			num ^= (int)this.refreshCase_;
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600C018 RID: 49176 RVA: 0x00206F74 File Offset: 0x00205174
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600C019 RID: 49177 RVA: 0x00206F7C File Offset: 0x0020517C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600C01A RID: 49178 RVA: 0x00206F88 File Offset: 0x00205188
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.HasDeleteEntity)
			{
				output.WriteRawTag(32);
				output.WriteUInt32(this.DeleteEntity);
			}
			if (this.refreshCase_ == SceneEntityRefreshInfo.RefreshOneofCase.AddEntity)
			{
				output.WriteRawTag(66);
				output.WriteMessage(this.AddEntity);
			}
			if (this.HasEDMFEJHEPFH)
			{
				output.WriteRawTag(88);
				output.WriteUInt32(this.EDMFEJHEPFH);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600C01B RID: 49179 RVA: 0x00207000 File Offset: 0x00205200
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.refreshCase_ == SceneEntityRefreshInfo.RefreshOneofCase.AddEntity)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.AddEntity);
			}
			if (this.HasEDMFEJHEPFH)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.EDMFEJHEPFH);
			}
			if (this.HasDeleteEntity)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.DeleteEntity);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600C01C RID: 49180 RVA: 0x00207070 File Offset: 0x00205270
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(SceneEntityRefreshInfo other)
		{
			if (other == null)
			{
				return;
			}
			SceneEntityRefreshInfo.RefreshOneofCase refreshCase = other.RefreshCase;
			if (refreshCase != SceneEntityRefreshInfo.RefreshOneofCase.DeleteEntity)
			{
				if (refreshCase != SceneEntityRefreshInfo.RefreshOneofCase.AddEntity)
				{
					if (refreshCase == SceneEntityRefreshInfo.RefreshOneofCase.EDMFEJHEPFH)
					{
						this.EDMFEJHEPFH = other.EDMFEJHEPFH;
					}
				}
				else
				{
					if (this.AddEntity == null)
					{
						this.AddEntity = new SceneEntityInfo();
					}
					this.AddEntity.MergeFrom(other.AddEntity);
				}
			}
			else
			{
				this.DeleteEntity = other.DeleteEntity;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600C01D RID: 49181 RVA: 0x002070EE File Offset: 0x002052EE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600C01E RID: 49182 RVA: 0x002070F8 File Offset: 0x002052F8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 32U)
				{
					if (num != 66U)
					{
						if (num != 88U)
						{
							this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
						}
						else
						{
							this.EDMFEJHEPFH = input.ReadUInt32();
						}
					}
					else
					{
						SceneEntityInfo sceneEntityInfo = new SceneEntityInfo();
						if (this.refreshCase_ == SceneEntityRefreshInfo.RefreshOneofCase.AddEntity)
						{
							sceneEntityInfo.MergeFrom(this.AddEntity);
						}
						input.ReadMessage(sceneEntityInfo);
						this.AddEntity = sceneEntityInfo;
					}
				}
				else
				{
					this.DeleteEntity = input.ReadUInt32();
				}
			}
		}

		// Token: 0x04004D64 RID: 19812
		private static readonly MessageParser<SceneEntityRefreshInfo> _parser = new MessageParser<SceneEntityRefreshInfo>(() => new SceneEntityRefreshInfo());

		// Token: 0x04004D65 RID: 19813
		private UnknownFieldSet _unknownFields;

		// Token: 0x04004D66 RID: 19814
		public const int AddEntityFieldNumber = 8;

		// Token: 0x04004D67 RID: 19815
		public const int EDMFEJHEPFHFieldNumber = 11;

		// Token: 0x04004D68 RID: 19816
		public const int DeleteEntityFieldNumber = 4;

		// Token: 0x04004D69 RID: 19817
		private object refresh_;

		// Token: 0x04004D6A RID: 19818
		private SceneEntityRefreshInfo.RefreshOneofCase refreshCase_;

		// Token: 0x02001D38 RID: 7480
		public enum RefreshOneofCase
		{
			// Token: 0x040068F6 RID: 26870
			None,
			// Token: 0x040068F7 RID: 26871
			AddEntity = 8,
			// Token: 0x040068F8 RID: 26872
			EDMFEJHEPFH = 11,
			// Token: 0x040068F9 RID: 26873
			DeleteEntity = 4
		}
	}
}
